"""
可视化部分
"""
import matplotlib.pylab as plt


def draw_total_return(strategy, backtest, trade):
    # 设置中文字体
    plt.rcParams['font.sans-serif'] = ['KaiTi']
    plt.rcParams['axes.unicode_minus'] = False
    # 横轴数据（日期）
    x = strategy.get_cal_date()
    # 纵轴数据（累计收益率）
    y = [i * 100 for i in backtest.cal_return(trade, strategy)]
    fig = plt.figure(num=0, figsize=(12, 6), dpi=500)
    ax = fig.add_subplot(111)
    # 设置纵轴坐标范围
    ax.set_ylim(min(y) - 10, max(y) + 10)
    # 隐藏横轴刻度（因为日期太密集）
    ax.set_xticks([])
    # 设置标题
    ax.set_title("回测累计收益率曲线图", fontsize=20)
    # 横轴标签
    ax.set_xlabel("日期", fontsize=16)
    # 纵轴标签
    ax.set_ylabel("收益率（%）", fontsize=16)

    ax.plot(x, y, label="累计收益率")
    # 图例
    ax.legend(loc="lower center", frameon=False)
    # 保存图片
    plt.savefig("./日志/累计收益曲线图.png")
    plt.show()
